Refactoring Using Event-based Profiling
نویسندگان
چکیده
Refactoring is a disciplined process of restructuring software code in order to improve it, e.g., to make it more reusable, reliable and maintainable. The source of information that guides the refactoring process may be the software’s user profiles. An increasingly important class of software is event-based software. Event-based software take an event as an input, change their state, and perhaps output an event. They provide new opportunities for refactoring. For example, reorganizing the objects related to an event and restructuring the event handlers based on the behavior of the software. These opportunities require that we collect user profiles at the level of events rather than the code and model the software in such a way that allows refactoring of event handlers. We present new techniques to collect eventlevel profiles and organize event handlers. We describe our techniques on one class of event-based software – Graphical User Interfaces (GUIs). We demonstrate the practicality and usefulness of our techniques on a large software system.
منابع مشابه
Model-based software Refactoring Driven by Performance Analysis
In order to deal with performance of software systems, it is important to introduce approaches that work in the early phases of the software life-cycle, even before the code is developed. In fact, if performance requirements are not met, there may be negative consequences on significant parts of the project. Some work has been done in the last few years to tackle the problem of automatically in...
متن کاملAutomating Verification of Event-B Models
Event-B is one of more popular notations for model-based, proof driven specification. It offers a fairly high-level mathematical language based on FOL and ZF set theory and an economical yet expressive modelling notation. Model correctness is established by discharging proving a number conjectures constructed via a syntactic instantiation of schematic conditions. A large proportion of provable ...
متن کاملA Set of Refactoring Rules for UML-B Specifications
UML-B is a graphical formal modelling notation which is based on UML and relies on Event-B and its verification tools. In this paper, we propose annealing and introduce subtyping rules as well-known refactoring rules which can improve and assist the derivation of object-oriented design from an abstract specification written in UML-B. We prove that the proposed annealing rules are behavior prese...
متن کاملGenetic Relationships among Three Yarrow Species Based on Phenotypic Traits and Peroxidase Profiling
Fifteen yarrow populations from different species Achillea millefolium L., A. biebersteinii L. and A. nobilis, from different geographical areas of Iran were studied using 24 morphological traits and peroxidase profiles. Comparison of mean values of different phenotypic traits show A. millefolium and A. biebersteinii L. had higher plant height and crown diameter; however, A. nobilis had higher ...
متن کاملRankProd 2.0: a refactored bioconductor package for detecting differentially expressed features in molecular profiling datasets
Motivation The Rank Product (RP) is a statistical technique widely used to detect differentially expressed features in molecular profiling experiments such as transcriptomics, metabolomics and proteomics studies. An implementation of the RP and the closely related Rank Sum (RS) statistics has been available in the RankProd Bioconductor package for several years. However, several recent advances...
متن کامل